namespace Microsoft.FluentUI.AspNetCore.Components;

public enum KeyCode
{
    Unknown = 0,
    Cancel = 3,
    Backspace = 8,
    Tab = 9,
    Clear = 12,
    Enter = 13,
    Shift = 16,
    Ctrl = 17,
    Alt = 18,
    PauseBreak = 19,
    CapsLock = 20,
    Escape = 27,
    Henkan = 28,
    Muhenkan = 29,
    Space = 32,
    PageUp = 33,
    PageDown = 34,
    End = 35,
    Home = 36,
    Left = 37,
    Up = 38,
    Right = 39,
    Down = 40,
    Select = 41,
    Print = 42,
    Execute = 43,
    F13 = 44,
    Insert = 45,
    Delete = 46,
    Help = 47,
    Digit0 = 48,
    Digit1 = 49,
    Digit2 = 50,
    Digit3 = 51,
    Digit4 = 52,
    Digit5 = 53,
    Digit6 = 54,
    Digit7 = 55,
    Digit8 = 56,
    Digit9 = 57,
    Period = 58,
    Semicolon = 59,
    Backquote = 60,
    Equal = 61,
    Minus = 63,
    KeyA = 65,
    KeyB = 66,
    KeyC = 67,
    KeyD = 68,
    KeyE = 69,
    KeyF = 70,
    KeyG = 71,
    KeyH = 72,
    KeyI = 73,
    KeyJ = 74,
    KeyK = 75,
    KeyL = 76,
    KeyM = 77,
    KeyN = 78,
    KeyO = 79,
    KeyP = 80,
    KeyQ = 81,
    KeyR = 82,
    KeyS = 83,
    KeyT = 84,
    KeyU = 85,
    KeyV = 86,
    KeyW = 87,
    KeyX = 88,
    KeyY = 89,
    KeyZ = 90,
    Command = 91,
    WindowsLeft = 91,
    WindowsRight = 92,
    ContextMenu = 93,
    Standby = 95,
    Numpad0 = 96,
    Numpad1 = 97,
    Numpad2 = 98,
    Numpad3 = 99,
    Numpad4 = 100,
    Numpad5 = 101,
    Numpad6 = 102,
    Numpad7 = 103,
    Numpad8 = 104,
    Numpad9 = 105,
    NumpadMultiply = 106,
    NumpadAdd = 107,
    NumpadDecimal = 108,
    NumpadSubtract = 109,
    NumpadDecimal2 = 110,
    NumpadDivide = 111,
    Function1 = 112,
    Function2 = 113,
    Function3 = 114,
    Function4 = 115,
    Function5 = 116,
    Function6 = 117,
    Function7 = 118,
    Function8 = 119,
    Function9 = 120,
    Function10 = 121,
    Function11 = 122,
    Function12 = 123,
    Function13 = 124,
    Function14 = 125,
    Function15 = 126,
    Function16 = 127,
    Function17 = 128,
    Function18 = 129,
    Function19 = 130,
    Function20 = 131,
    Function21 = 132,
    Function22 = 133,
    Function23 = 134,
    Function24 = 135,
    Function25 = 136,
    Function26 = 137,
    Function27 = 138,
    Function28 = 139,
    Function29 = 140,
    Function30 = 141,
    Function31 = 142,
    Function32 = 143,
    NumLock = 144,
    ScrollLock = 145,
    BracketLeft2 = 160,
    BracketRight2 = 161,
    Backquote2 = 163,
    Backslash2 = 164,
    Quote = 165,
    AudioVolumeDown = 174,
    AudioVolumeUp = 175,
    MediaTrackNext = 176,
    MediaTrackPrevious = 177,
    MediaStop = 178,
    MediaPlayPause = 179,
    LaunchMail = 180,
    AudioVolumeMute = 181,
    AudioVolumeDownFF = 182,
    AudioVolumeUpFF = 183,
    MyComputer = 182,
    MyCalculator = 183,
    Semicolon2 = 186,
    Equal2 = 187,
    Comma = 188,
    Minus2 = 189,
    Period2 = 190,
    Slash = 191,
    IntlBackslash = 192,
    IntlRo = 193,
    NumpadComma = 194,
    BracketLeft = 219,
    Backslash = 220,
    BracketRight = 221,
    SimpleQuote = 222,
    Backquote3 = 223,
    Meta = 224,
    AltGraph = 225,

    /*
     *  // lower case chars
        for (i = 97; i < 123; i++) codes[String.fromCharCode(i)] = i - 32

        // numbers
        for (var i = 48; i < 58; i++) codes[i - 48] = i

        // function keys
        for (i = 1; i < 13; i++) codes['f'+i] = i + 111

        // numpad keys
        for (i = 0; i < 10; i++) codes['numpad '+i] = i + 96
     */
}
